home *** CD-ROM | disk | FTP | other *** search
/ SGI Freeware 2002 November / SGI Freeware 2002 November - Disc 1.iso / dist / fw_ddd.idb / usr / freeware / share / ddd-3.3.1 / vsllib / builtin.vsl.z / builtin.vsl
Text File  |  2001-10-09  |  4KB  |  120 lines

  1. // $Id: builtin.vsl,v 1.2 2000/06/16 16:43:36 andreas Exp $
  2. // Builtin VSL functions
  3.  
  4. // Copyright (C) 1993 Technische Universitaet Braunschweig, Germany.
  5. // Written by Andreas Zeller <zeller@gnu.org>.
  6. // 
  7. // This file is part of DDD.
  8. // 
  9. // DDD is free software; you can redistribute it and/or
  10. // modify it under the terms of the GNU General Public
  11. // License as published by the Free Software Foundation; either
  12. // version 2 of the License, or (at your option) any later version.
  13. // 
  14. // DDD is distributed in the hope that it will be useful,
  15. // but WITHOUT ANY WARRANTY; without even the implied warranty of
  16. // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
  17. // See the GNU General Public License for more details.
  18. // 
  19. // You should have received a copy of the GNU General Public
  20. // License along with DDD -- see the file COPYING.
  21. // If not, write to the Free Software Foundation, Inc.,
  22. // 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
  23. // 
  24. // DDD is the data display debugger.
  25. // For details, see the DDD World-Wide-Web page, 
  26. // `http://www.gnu.org/software/ddd/',
  27. // or send a mail to the DDD developers <ddd@gnu.org>.
  28.  
  29. // Internal names
  30.  
  31. // Operators
  32. __op_halign(...);        // &   -- horizontal alignment
  33. __op_valign(...);        // |   -- vertical alignment
  34. __op_ualign(...);        // ^   -- transparent alignment
  35. __op_talign(...);        // ~   -- textual alignment
  36. __op_plus(...);            // +   -- box arithmetic
  37. __op_mult(...);            // *   -- box arithmetic
  38. __op_cons(...);            // ::  -- list concatenation
  39. __op_minus(a, b);        // -   -- box arithmetic
  40. __op_div(a, b);            // /   -- box arithmetic
  41. __op_mod(a, b);            // %   -- box arithmetic
  42. __op_eq(a, b);            // =   -- box arithmetic
  43. __op_ne(a, b);            // !=  -- box arithmetic
  44. __op_gt(a, b);            // >   -- box arithmetic
  45. __op_ge(a, b);            // >=  -- box arithmetic
  46. __op_lt(a, b);            // <   -- box arithmetic
  47. __op_le(a, b);            // <=  -- box arithmetic
  48. __op_not(a);            // not -- box arithmetic
  49.  
  50. // Functions
  51. __hspace(box);                  // Horizontal space
  52. __vspace(box);            // Vertical space
  53. __hfix(box);            // Fix horizontal extent
  54. __vfix(box);            // Fix vertical extent
  55. __rise(linethickness);        // Diagonal `/'
  56. __fall(linethickness);        // Diagonal `\`
  57. __arc(start, length, linethickness); // Arc
  58. __square(box);            // A square with BOX size
  59. __tag(box);            // A tag box
  60. __string(box);            // The string in BOX
  61. __chars(box);            // The characters in BOX
  62. __font(box, font);        // Set the font of BOX to FONT
  63. __fontfix(box);            // Freeze the font of BOX
  64. __background(box, color);    // Display BOX using COLOR as background
  65. __foreground(box, color);    // Display BOX using COLOR as foreground
  66.  
  67. // Constants
  68. __fill();            // Stretchable white space
  69. __rule();            // Stretchable black space
  70. __diag();            // Diagnostic box
  71.  
  72. // Error handling
  73. __fail(...);            // Issue an error message
  74. __undef();            // A box standing for `undefined content'
  75.  
  76.  
  77. // Public names
  78.  
  79. // Operators
  80. (&)(...)   = __op_halign(...);
  81. (|)(...)   = __op_valign(...);
  82. (^)(...)   = __op_ualign(...);
  83. (~)(...)   = __op_talign(...);
  84. (+)(...)   = __op_plus(...);
  85. (*)(...)   = __op_mult(...);
  86. (::)(...)  = __op_cons(...);
  87. (-)(a, b)  = __op_minus(a, b);
  88. (/)(a, b)  = __op_div(a, b);
  89. (%)(a, b)  = __op_mod(a, b);
  90. (=)(a, b)  = __op_eq(a, b);
  91. (<>)(a, b) = __op_ne(a, b);
  92. (>)(a, b)  = __op_gt(a, b);
  93. (>=)(a, b) = __op_ge(a, b);
  94. (<)(a, b)  = __op_lt(a, b);
  95. (<=)(a, b) = __op_le(a, b);
  96. (not)(a)   = __op_not(a);
  97.  
  98. // Other functions
  99. hspace(box)                       = __hspace(box);
  100. vspace(box)                       = __vspace(box);
  101. hfix(box)                         = __hfix(box);
  102. vfix(box)                         = __vfix(box);
  103. rise(linethickness)               = __rise(linethickness);
  104. fall(linethickness)               = __fall(linethickness);
  105. arc(start, length, linethickness) = __arc(start, length, linethickness);
  106. square(box)                       = __square(box);
  107. tag(box)                          = __tag(box);
  108. string(box)                       = __string(box);
  109. chars(box)                        = __chars(box);
  110. font(box, font)                   = __font(box, font);
  111. fontfix(box)                      = __fontfix(box);
  112. background(box, color)            = __background(box, color);
  113. foreground(box, color)            = __foreground(box, color);
  114. fill()                            = __fill();
  115. rule()                            = __rule();
  116. diag()                            = __diag();
  117. fail()                            = __fail();
  118. fail(message)                     = __fail(message);
  119. undef()                           = __undef();
  120.